- 
                Notifications
    
You must be signed in to change notification settings  - Fork 494
 
Add more telemetry for project import & workspaces hash #4177
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add more telemetry for project import & workspaces hash #4177
Conversation
        
          
                src/standardLanguageClient.ts
              
                Outdated
          
        
      | return Telemetry.sendTelemetry(Telemetry.LS_ERROR, e.properties); | ||
| await Telemetry.sendTelemetry(Telemetry.LS_ERROR, e.properties); | ||
| } | ||
| } else if (e.name === Telemetry.IMPORT_PROJECT) { | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
for now can we skip this event and just send the workspace hash to the telemetry service?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The idea of the event is to know how many import runs catastrophically fail and why. How would we know that if we don't report it to telemetry?
Signed-off-by: Thomas Mäder <[email protected]>
Signed-off-by: Thomas Mäder <[email protected]>
41ab508    to
    c8298b0      
    Compare
  
            
          
                src/standardLanguageClient.ts
              
                Outdated
          
        
      | const javaSettings = getJavaSettingsForTelemetry(workspace.getConfiguration()); | ||
| 
               | 
          ||
| const properties= { ...e.properties, ...javaSettings }; | ||
| await Telemetry.sendTelemetry(Telemetry.STARTUP_EVT, ); | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you should really send those properties ;-)
Signed-off-by: Thomas Mäder <[email protected]>
29b6f3d    to
    3c556e2      
    Compare
  
            
          
                src/telemetry.ts
              
                Outdated
          
        
      | */ | ||
| export async function sendTelemetry(eventName: string, data?: any): Promise<void> { | ||
| export async function sendTelemetry(eventName: string, data?: object): Promise<void> { | ||
| console.log(`Sending telemetry event: ${eventName} with data: ${JSON.stringify(data)}`); | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
unnecessary as we already have logging from vscode-redhat-telemetry. If you don't see it in your debug console, make sure you run npm ci to see the latest version.
        
          
                src/telemetry.ts
              
                Outdated
          
        
      | export const COMPLETION_EVENT = "textCompletion"; | ||
| export const SERVER_INITIALIZED_EVT = "java.workspace.initialized"; | ||
| export const LS_ERROR = "java.ls.error"; | ||
| export const IMPORT_PROJECT = "java.workspace.importProject"; | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
unused
Signed-off-by: Thomas Mäder <[email protected]>
| 
           Thanks @tsmaeder  | 
    
Adds code to forward "project import" telemetry from LS and adds a hash of the workspace folders to the all telemetry messages.
Fixes #4175
Companion PR to eclipse-jdtls/eclipse.jdt.ls#3544
How to test: I could only test this in the debugger since I don't have access to the telemetry data buckets.